Adaptive multi-standard signal classification and synchronization

ABSTRACT

Adaptive multi-standard signal classification and synchronization is disclosed. Devices, systems and methods include an auto-correlation bank and a signal classifier to efficiently and reliably distinguish signals of wireless protocols, such as Bluetooth, 1 megabit-per-second (Mbps) Bluetooth low energy (BLE), 2 Mbps BLE, long range (LR) BLE, ZigBee (ZB), high-rate ZB, and so on. The auto-correlation bank includes a set of auto-correlators with different delays, which facilitate distinguishing between the different wireless protocols. Exemplary aspects can further distinguish and/or compensate for interference sources, such as WiFi, constant wave (CW) clock sources, and so on. In some examples, a frequency offset of an incoming signal can be output for further signal processing. In a parallel path, a cross-correlation circuit facilitates synchronization to the incoming signal based on a signal type identified by the signal classifier.

RELATED APPLICATIONS

This application claims the benefit of provisional patent applicationSer. No. 62/815,290, filed on Mar. 7, 2019, the disclosure of which ishereby incorporated herein by reference in its entirety.

FIELD OF THE DISCLOSURE

This application is related to classification of wireless signals. Someaspects relate to classification of low power wireless signals forinternet of things (IoT) or similar applications.

BACKGROUND

Low power radio standards are being developed, including several newBluetooth low energy (BLE) and ZigBee (ZB) modes of operation tradingoff data rate and range including 1 megabit-per-second (Mbps) BLE, 2Mbps BLE, long range (LR) BLE, ZB, and high-rate ZB packets. Thesevarious standards need to function reliably in the presence ofinterference stemming from existing household radio systems, such asWiFi, as well as constant wave (CW) clock sources emanating from nearbyelectronics in small highly integrated set-top boxes and sensor devices.Accordingly, new signal processing techniques are needed which arecapable of reliably distinguishing and synchronizing to any of thesevarious packet formats in an interfering environment.

At the same time, LR BLE and other standards are needed in increasinglysmall and low-power devices. For example, home automation radio systemsmay be deployed in smart phones and a wide variety of home automationdevice nodes, such as light bulb switches and sensor devices. Forflexibility and ease of installation, these radio systems may operate onsmall coin cell batteries. Thus, any multi-standard radio system gearedtowards home automation needs to achieve this extra signal processing atlow cost and using low-power techniques.

FIG. 1 and FIG. 2 illustrate conventional techniques for detectingwireless signals. In this regard, FIG. 1 is a schematic diagram of aconventional auto-correlation technique 10 for detecting low power radiopreambles. The auto-correlation technique 10 takes advantage of the factthat most common radio protocols used in the household, including BLE,LR BLE, WiFi, and ZB specify preambles containing a repeating pattern.The auto-correlation technique 10 correlates an incoming signal withitself delayed by a period equal to the period of these preambles (witha two symbol delay 12). The auto-correlation technique 10 includes amultiplier 14 and an integrator 16. The result has a larger magnitudewhen the preamble is present compared with noise. A magnitude 18 of theauto-correlation can be used to provide a timing estimate (e.g., using amaximizing function 20), while a phase measurement 22 can be used for afrequency offset estimate.

While this approach is very low power, it suffers from severaldrawbacks. First, the correlation of a noisy input signal with itselfresults in noise cross products and non-ideal performance. A seconddrawback of this approach is that the carrier frequency offset (CFO)range of the auto-correlation algorithm is limited by phase ambiguity.This is particularly problematic for LR BLE and ZB preambles which havelong preamble periods resulting in a valid CFO estimation range of only125 kiloHertz (kHz) and 62.5 kHz. This is lower than the maximum CFOallowed by these standards. Finally, the auto-correlation technique 10is also susceptible to continuous wave interference deriving from, forexample, nearby clock signals on chip or printed circuit board (PCB).

FIG. 2 is a schematic diagram of a conventional cross-correlationtechnique 24 for detecting low power radio preambles. Thecross-correlation technique 24 correlates a preamble of an incomingsignal against a known preamble. This is a more accurate synchronizationtechnique than the auto-correlation technique 10 as there are no noisecross products, but it comes at a much higher cost since the frequencyoffset between the transmitter and receiver crystals is unknown. Thisrequires performing the cross-correlation at multiple frequency offsets.For example, a first correlator 26(1) correlates against a firstpreamble at frequency f1, a second correlator 26(2) correlates against asecond preamble at frequency f2, a third correlator 26(3) correlatesagainst a third preamble at frequency f3, and an nth correlator 26(N)correlates against an nth preamble at frequency fn. The magnitude 18 ofeach correlator 26(1)-26(N) can be used to provide timing and frequencyestimates (e.g., using the maximizing function 20).

At least 15 parallel correlations at different frequency offsets arerequired for robust performance in practice for low power standards suchas BLE and ZB. Furthermore, this set of 15 correlators 26(1)-26(N) wouldneed to be duplicated in order to concurrently monitor BLE and LR BLEsignals on the same channel. In the case of BLE, this approach isparticularly complex since BLE has a repeating “01010101” and “10101010”preamble when modulated with BLE's specified Gaussian minimum shiftkeying (GMSK) scheme. This preamble also correlates well with CWsignals, making it susceptible to false detections from interferingnarrowband systems. Furthermore, the preamble is often corrupted byautomatic gain control mechanisms. As a result, some portion of theaccess code is typically included in the correlation at each frequencyoffset, resulting in additional power consumption and complexity.

FIG. 3 is a schematic diagram of a conventional synchronizing approach28 for synchronizing to a WiFi orthogonal frequency division multiplexed(OFDM) radio preamble. The synchronizing approach 28 uses two or morestages (selected using a multiplexer 30) to refine the synchronizationprocess. In a first phase, an auto-correlation algorithm is commonlyused to estimate the frequency offset at low complexity and thencompensate for the frequency offset using a CORDIC or similar algorithm.With the frequency offset removed, a single correlation can be performedreducing the complexity as compared with the cross-correlation technique24 of FIG. 2. Thus, in the first phase, only a top portion 32 of FIG. 3is active (with the two symbol delay 12). The timing of the end of thepreamble is estimated based on the magnitude 18 and peak detection 34 ofthe auto-correlation. Once this timing is known, a phase measurement(angle output) 22 of the auto-correlation at this timing is used toobtain an estimate of the frequency offset.

In the second phase, a bottom portion 36 of FIG. 3 is activated and theauto-correlation algorithm (the top portion 32) is disabled. Thefrequency offset estimated in the first phase is compensated (with afrequency compensation circuit 38) and a single cross-correlation isperformed (by one correlator 26) on a later portion of the preamble,often over a subset of timing offsets based on a coarse estimateprovided by the magnitude 18 of the auto-correlation in the first phase.Peak detection 34 is performed on an output of the correlator 26. Othervariations on this multi-stage approach involve using a secondauto-correlation (in series with the correlator 26) or frequency domainsynchronization technique on the compensated data during the secondstage to refine the estimate.

While this approach can achieve excellent accuracy, it suffers from acouple of drawbacks. First, the auto-correlation CFO estimation range islimited if this approach were applied to LR BLE and ZB preambles. Therange of the auto-correlation CFO estimate for the 8 us LR BLE preambleperiod is limited to only +/−62.5 kHz frequency offsets which is notgood enough to cover the +/−250 kHz range requirements of the standard.A second drawback of this approach is that it uses the access code ofthe preamble as part of the synchronization process which costs delay.This is because the LR BLE standard specifies that radios must detecteach bit of the access code so that, after synchronization with theaccess code, data must be stored in a buffer to facilitate returning tothe beginning of the access code to detect it symbol-by-symbol.

FIG. 4 is a schematic diagram of an auto-correlation andcross-correlation hybrid approach 40 for detecting a radio preamble.Under the hybrid approach 40, a frequency estimate (from a phasemeasurement 22) selects correlator coefficients from a table ofcoefficients 42 at different frequency offsets. Rather than correlatingagainst the access code in a second step, one benefit of this approachis that correlation 26 is performed against the same repeating preamblein parallel with an auto-correlation (using the multiplier 14 andintegrator 16) so there is no extra delay on the algorithm. It alsobenefits from better accuracy than the auto-correlation technique 10 ofFIG. 1 since the accuracy of the frequency estimate is not degraded byuncertainty in the peak of the auto-correlation magnitude function.Unfortunately, in the context of LR BLE and ZB, this hybrid approach 40still suffers from limited CFO estimation range.

A final drawback of all the conventional approaches described above isthat they must be duplicated to search for BLE and LR BLE signalsconcurrently on BLE advertising channels. While this feature is notrequired by the standard, this concurrency is a common feature among BLEradios in practice. In the context of emerging multi-standard radioswhich simultaneously listen to ZB, BLE, and LR BLE signals concurrently,the hardware must be reproduced three times to discriminate between andsynchronize to all the relevant preambles. This can result inunacceptable power and area increase in the context of low-costlow-power internet of things (IoT) and home automation systems.

SUMMARY

This application relates to adaptive multi-standard signalclassification and synchronization. Devices, systems and methodsdisclosed herein include an auto-correlation bank and a signalclassifier to efficiently and reliably distinguish signals of wirelessprotocols, such as Bluetooth, 1 megabit-per-second (Mbps) Bluetooth lowenergy (BLE), 2 Mbps BLE, long range (LR) BLE, ZigBee (ZB), high-rateZB, and so on. The auto-correlation bank includes a set ofauto-correlators with different delays, which facilitate distinguishingbetween the different wireless protocols. Exemplary aspects can furtherdistinguish and/or compensate for interference sources, such as WiFi,constant wave (CW) clock sources, and so on. In some examples, afrequency offset of an incoming signal can be output for further signalprocessing.

In another exemplary aspect, a parallel path is provided tofrequency-compensate the incoming signal using an estimate of thecarrier frequency offset (CFO) from the auto-correlation bank. Thisreduces the number of parallel correlators needed for synchronization ofthe incoming signal. The frequency compensated data can becross-correlated against preamble coefficients of signal standards(e.g., BLE, LR BLE, or ZB) depending on the result of the signalclassifier. If the signal classifier detects signals that are notrelevant for the system, such as CW interference, WiFi interference, ornoise, the correlators can be disabled. In addition, the number ofcorrelators and correlation lengths can be scaled as needed depending onthe type of incoming signal. This approach therefore re-uses hardware,saving cost and area, while conserving power by scaling key processingunits depending on the incoming signal. Using a cross-correlation blockfor packet synchronization allows for more reliable performance, whichis especially important for low data rate internet of things (IoT)standards operating at low signal to noise ratio (SNR), such as ZB andLR BLE.

An exemplary embodiment relates to a signal detector. The signaldetector includes an auto-correlation bank configured to receive signaldata for an incoming signal. The auto-correlation bank includes a firstauto-correlator configured to correlate the signal data against itselfat a first delay and a second auto-correlator configured to correlatethe signal data against itself at a second delay. The signal detectorfurther includes a signal classifier configured to classify the incomingsignal based on a first output of the first auto-correlator and a secondoutput of the second auto-correlator.

Another exemplary embodiment relates to a method for detecting awireless signal. The method includes receiving signal data for anincoming signal, performing a first auto-correlation of the signal dataat a first delay, and performing a second auto-correlation, concurrentwith the first auto-correlation, of the signal data at a second delay.The method further includes classifying the incoming signal based on afirst magnitude of the first auto-correlation and a second magnitude ofthe second auto-correlation.

Another exemplary embodiment relates to a signal processing system foran incoming signal. The signal processing system includes anauto-correlation bank configured to perform a plurality ofauto-correlations of signal data of the incoming signal, eachauto-correlation having a distinct delay and provide a CFO estimatebased on the plurality of auto-correlations. The signal processingsystem further includes a CFO correction circuit configured to frequencycompensate the signal data with the CFO estimate. The signal processingsystem further includes a cross-correlation bank configured todynamically provide a plurality of parallel cross-correlations of thefrequency compensated signal data to resolve ambiguity in the CFOestimate.

Those skilled in the art will appreciate the scope of the presentdisclosure and realize additional aspects thereof after reading thefollowing detailed description of the preferred embodiments inassociation with the accompanying drawing figures.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

The accompanying drawing figures incorporated in and forming a part ofthis specification illustrate several aspects of the disclosure, andtogether with the description serve to explain the principles of thedisclosure.

FIG. 1 is a schematic diagram of a conventional auto-correlationtechnique for detecting low power radio preambles.

FIG. 2 is a schematic diagram of a conventional cross-correlationtechnique for detecting low power radio preambles.

FIG. 3 is a schematic diagram of a conventional synchronizing approachfor synchronizing to a WiFi orthogonal frequency division multiplexed(OFDM) radio preamble.

FIG. 4 is a schematic diagram of an auto-correlation andcross-correlation hybrid approach for detecting a radio preamble.

FIG. 5 is a schematic diagram of an exemplary signal processing systemconfigured to adaptively classify and synchronize to an incoming signal.

FIG. 6 is a schematic diagram of an exemplary signal detector for thesignal processing system of FIG. 5.

FIG. 7 is a schematic diagram of an exemplary implementation of theauto-correlation bank of FIG. 6.

FIG. 8 is a schematic diagram of an exemplary cross-correlation circuitfor the signal processing system of FIG. 5.

DETAILED DESCRIPTION

The embodiments set forth below represent the necessary information toenable those skilled in the art to practice the embodiments andillustrate the best mode of practicing the embodiments. Upon reading thefollowing description in light of the accompanying drawing figures,those skilled in the art will understand the concepts of the disclosureand will recognize applications of these concepts not particularlyaddressed herein. It should be understood that these concepts andapplications fall within the scope of the disclosure and theaccompanying claims.

It will be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms. These terms are only used to distinguish oneelement from another. For example, a first element could be termed asecond element, and, similarly, a second element could be termed a firstelement, without departing from the scope of the present disclosure. Asused herein, the term “and/or” includes any and all combinations of oneor more of the associated listed items.

It will be understood that when an element is referred to as being“connected” or “coupled” to another element, it can be directlyconnected or coupled to the other element or intervening elements may bepresent. In contrast, when an element is referred to as being “directlyconnected” or “directly coupled” to another element, there are nointervening elements present.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the disclosure.As used herein, the singular forms “a,” “an,” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises,”“comprising,” “includes,” and/or “including” when used herein specifythe presence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which this disclosure belongs. It willbe further understood that terms used herein should be interpreted ashaving a meaning that is consistent with their meaning in the context ofthis specification and the relevant art and will not be interpreted inan idealized or overly formal sense unless expressly so defined herein.

This application relates to adaptive multi-standard signalclassification and synchronization. Devices, systems and methodsdisclosed herein include an auto-correlation bank and a signalclassifier to efficiently and reliably distinguish signals of wirelessprotocols, such as Bluetooth, 1 megabit-per-second (Mbps) Bluetooth lowenergy (BLE), 2 Mbps BLE, long range (LR) BLE, ZigBee (ZB), high-rateZB, and so on. The auto-correlation bank includes a set ofauto-correlators with different delays, which facilitate distinguishingbetween the different wireless protocols. Exemplary aspects can furtherdistinguish and/or compensate for interference sources, such as WiFi,constant wave (CW) clock sources, and so on. In some examples, afrequency offset of an incoming signal can be output for further signalprocessing.

In another exemplary aspect, a parallel path is provided tofrequency-compensate the incoming signal using an estimate of thecarrier frequency offset (CFO) from the auto-correlation bank. Thisreduces the number of parallel correlators needed for synchronization ofthe incoming signal. The frequency compensated data can becross-correlated against preamble coefficients of signal standards(e.g., BLE, LR BLE, or ZB) depending on the result of the signalclassifier. If the signal classifier detects signals that are notrelevant for the system, such as CW interference, WiFi interference, ornoise, the correlators can be disabled. In addition, the number ofcorrelators and correlation lengths can be scaled as needed depending onthe type of incoming signal. This approach therefore re-uses hardware,saving cost and area, while conserving power by scaling key processingunits depending on the incoming signal. Using a cross-correlation blockfor packet synchronization allows for more reliable performance, whichis especially important for low data rate internet of things (IoT)standards operating at low signal to noise ratio (SNR), such as ZB andLR BLE.

FIG. 5 is a schematic diagram of an exemplary signal processing system50 configured to adaptively classify and synchronize to an incomingsignal INS. The signal processing system 50 includes a signal detector52 for receiving and classifying signals. The signal detector 52includes an auto-correlation bank 54 which receives signal data for theincoming signal INS and auto-correlates the signal at different delays(e.g., 4 μs, 8 μs, etc.). A signal classifier 56 is configured toclassify the incoming signal INS based on outputs of theauto-correlation bank 54, and may further output a classification signalSTYPE.

In an exemplary aspect, the signal detector 52 can reliably distinguishsignals of multiple wireless protocols, such as Bluetooth, 1 Mbps BLE, 2Mbps BLE, LR BLE, ZB, high-rate ZB, and so on, as well as interferencesources such as WiFi and CW clock signals at a low cost and power. Insome examples, the signal detector 52 can output an estimated CFO signalCFO_EST of the incoming signal INS. The signal detector 52 is describedin further detail below with respect to FIGS. 6 and 7.

In a parallel path, a cross-correlation circuit 58 facilitatessynchronizing to the incoming signal INS. The signal data for theincoming signal INS can first be frequency compensated (e.g., by a CFOcorrection circuit 60 or similar function) using the estimated CFOsignal CFO_EST from the auto-correlation bank 54. This reduces thenumber of parallel correlators needed for synchronization in across-correlation bank 62.

The cross-correlation bank 62 cross-correlates the frequency compensatedsignal data against either ZB, BLE, or LR BLE preamble coefficientsdepending on the result of the signal classifier 56 (e.g., with theclassification signal STYPE, which may be stored in coefficient memory64). If the signal classifier 56 detects signals that are not relevantfor the system 50 or a current application operated on the system 50,such as CW interference, WiFi interference, or noise, thecross-correlation bank 62 can be disabled to conserve power. Inaddition, the number of correlators and correlation lengths in thecross-correlation bank 62 can be scaled as needed depending on the typeof the incoming signal INS (e.g., as indicated by the classificationsignal STYPE).

The signal processing system 50 therefore re-uses hardware, saving costand area while conserving power by scaling key processing unitsdepending on the current incoming signal INS. Finally, using thecross-correlation circuit 58 for final packet synchronization allows formore reliable performance. This reliability is particularly importantfor low data rate IoT standards operating at low SNR, such as ZB and LRBLE.

The incoming signal INS may be further processed using additionalcircuitry, such as peak detection circuitry 66. The cross-correlationcircuit 58 is further described below with respect to FIG. 8. It shouldbe understood that the signal data of the incoming signal INS can bedown-converted to baseband or low-intermediate frequency (IF), and rawin-phase/quadrature (I/O) samples can be received at the input to thesignal processing system 50.

FIG. 6 is a schematic diagram of an exemplary signal detector 52 for thesignal processing system 50 of FIG. 5. The signal detector 52 is dividedinto sub-blocks: the auto-correlation bank 54 and the signal classifier56. In this example, the signal data of the incoming signal INS receivedby the auto-correlation bank 54 is hard-limited I/O data. Theauto-correlation bank 54 includes two or more auto-correlators 68, 70,72 which correlate the signal data against itself at different delaysreceived from a delay circuit 74. Each auto-correlator 68, 70, 72includes a multiplier 76 and an accumulator 78 (e.g., an integrator). Inthe example illustrated, a first auto-correlator 68 is configured tocorrelate the signal data against itself at a first delay of 16 μs, asecond auto-correlator 70 is configured to correlate the signal dataagainst itself at a second delay of 8 μs, and a third auto-correlator 72is configured to correlate the signal data against itself at a thirddelay of 4 μs.

In some examples, a down-sample function 80 can be used at the input tothe auto-correlation bank 54 and/or the output of each auto-correlator68, 70, 72 to conserve power depending on a desired resolution. Themagnitude of the signal output from each auto-correlator 68, 70, 72 canbe measured by a corresponding first magnitude function 82, a secondmagnitude function 84, and a third magnitude function 86 and sent to thesignal classifier 56. The CFO can be estimated from the signal outputfrom each auto-correlator 68, 70, 72 by a corresponding first offsetfunction 88, a second offset function 90, and a third offset function 92and sent to the CFO correction circuit 60 of FIG. 5 to aid insynchronization. The offset functions 88, 90, 92 can be configured tocompute the phase angle of the output of the correspondingauto-correlator 68, 70, 72 to produce the estimated CFO signal CFO_EST.

The signal classifier 56 then simultaneously analyzes all theauto-correlator 68, 70, 72 outputs (e.g., the outputs of the magnitudefunctions 82, 84, 86) to determine a type of the incoming signal INS. Inthe example illustrated in FIG. 6, the type can be determined betweenZB, LR BLE, and CW as follows:

-   -   The magnitude of the output of the first auto-correlator 68        (e.g., at a 16 μs delay) will be high for ZB, LR BLE preambles,        and CW.    -   The magnitude of the output of the second auto-correlator 70        (e.g., at an 8 μs delay) will be high for LR BLE preambles and        CW, but low for ZB.    -   The magnitude of the output of the third auto-correlator 72        (e.g., at a 4 μs delay) will be high for CW only, but low for ZB        and LR BLE.

In greater detail, because the ZB preamble has a period of 16 μs, the 16μs auto-correlation result will rise to a high value when a ZB preamblearrives. However, this is also true for LR BLE signals and CW signals.Thus, a pure auto-correlation function is not useful for distinguishingbetween these types of signals. Instead, the signal classifier 56 uses alinear combination of two or more auto-correlators 68, 70, 72 withdifferent delays to classify signals.

In the example signal classifier 56, the output of the second magnitudefunction 84 (e.g., for the second auto-correlator 70 at an 8 μs delay)is subtracted from the output of the first magnitude function 82 (e.g.,for the first auto-correlator 68 at a 16 μs delay) at a first adder 94to yield indication of a first signal type (e.g., ZB). A first thresholddetector 96 outputs a first classification signal TYPE1 from thiscombination of auto-correlation functions. The first classificationsignal TYPE1 will remain high for a ZB packet because the 16 μsauto-correlation magnitude (output by the first magnitude function 82)will be high as before, but the 8 μs auto-correlation result (output bythe second magnitude function 84 and unmatched to the 16 μs ZB preambleperiod) will be very low.

In contrast, the first classification signal TYPE1 will be low for LRBLE, CW, and noise inputs. For LR BLE preambles, having a period of 8μs, both magnitude functions 82, 84 will be high so the net result fromthe first adder 94 will be nearly zero. CW signals have highauto-correlation results for all auto-correlation functions, and the netresult of the magnitude functions 82, 84 will be nearly zero. Othersignals, such as 1 Mbps BLE, 2 Mbps BLE, and noise will produce lowauto-correlation results from the magnitude functions 82, 84 as there isno 8 μs or 16 μs repeating patterns. Thus, while one auto-correlationresult by itself is not useful for distinguishing signal types,combining two or more auto-correlation results with different delaystogether can be very effective.

Additional signal types can be indicated using other results of theauto-correlators 68, 70, 72. For example, the output of the thirdmagnitude function 86 (e.g., for the third auto-correlator 72 at a 4 μsdelay) is subtracted from the output of the second magnitude function 84(e.g., for the second auto-correlator 70 at a 4 μs delay) at a secondadder 98 to yield indication of a second signal type (e.g., LR BLE). Asecond threshold detector 100 outputs a second classification signalTYPE2 from this combination of auto-correlation functions. In this case,both magnitude functions 84, 86 will be high for CW yielding adifference at the second adder 98 near zero, and both auto-correlatorresults will be low for ZB also yielding a result near zero. However,the result of this combination will be high for LR BLE preambles havinga period of 8 μs. Additional signal types can be detected usingadditional combinations of auto-correlation functions as desired.

In addition, the signal classifier 56 can be used to detect CW and otherinterference. For example, the outputs of the first magnitude function82, the second magnitude function 84, and the third magnitude function86 can be summed at a third adder 102. A third threshold detector 104outputs a third classification signal TYPE3 to indicate CW interference.This can be used to avoid false-detections or deactivate the signalprocessing system 50 of FIG. 5 (e.g., some or all components of an RFradio in a mobile device, IoT device, home automation device, etc.) inthe event CW interference is detected.

The signal detector 52 of FIG. 6 can be adapted to distinguish betweenany radio systems using preambles having different repeating periods. Itshould be understood that such embodiments of the signal detector 52 caninclude more or fewer auto-correlators 68, 70, 72, magnitude functions82, 84, 86, and so on in order to identify these radio systems. Forexample, the signal detector 52 can detect regular BLE signals byincluding auto-correlators having 2 μs and 1 μs delays. In someexamples, the results of the auto-correlation bank 54 can be scaled andcombined to create linear combinations of outputs of theauto-correlators 68, 70, 72 useful for classifying signals. This canaccount for differing moving average lengths or for preamble patternsthat partially correlate at one delay, but fully correlate at anotherdelay. Similarly, the addition/subtraction logic of the signalclassifier 56 can be supplemented by hysteresis or replaced with otherforms of logic that accomplish a similar goal. An example is summarizedin Table 1 below:

TABLE 1 BLE LR BLE ZB Auto- preamble preamble Preamble correlation (2 μs(8 μs (16 μs delay period) period) period) CW AWGN 1 μs LOW LOW LOW HIGHLOW 2 μs HIGH LOW LOW HIGH LOW 4 μs HIGH LOW LOW HIGH LOW 8 μs LOW HIGHLOW HIGH LOW 16 μs  LOW HIGH HIGH HIGH LOW

Each row of Table 1 represents an auto-correlation function with adifferent delay ranging from 1 μs-16 μs, though other auto-correlationdelays can be considered depending on the type of preamble searched for.“LOW” indicates a low magnitude for that auto-correlator delay in thepresence of the specified preamble (BLE, LR BLE, and ZB), while “HIGH”represents a high magnitude. Each type of signal of interest in Table 1has a unique “signature” of auto-correlation outputs which can be usedto classify the signal type.

In the present context, this information from the signal detector 52 isused to enable/disable cross-correlators and select appropriatecorrelator coefficients to synchronize to a signal of interest, asdescribed further below with respect to FIG. 8. However, the proposedalgorithm can be extended to enable, disable, or otherwise control anyrelevant processing blocks not required for the present signalconditions. In addition, the signal detector 52 is effective foridentifying high power signals even if they are located on anotherfrequency channel. This is because periodic preambles maintain the sameperiodicity even at the output of a linear filter system. This can beuseful in other contexts, such as classifying interferers havingspecific repeating preamble patterns (e.g., WiFi interferers) on anotherchannel and adjusting gain settings.

In some examples, the signal detector 52 can identify signals intime-multiplexing multi-standard applications, and can wake up orotherwise enable radios that detect packets based on a sudden increasein signal level. For example, the onset of a new signal type could bedetected by a sudden increase in signal level from an adjacent channel.To determine if the signal is from a relevant standard on the currentchannel, the signal detector 52 can be deployed to determine what typeof preamble caused the level increase. If the packet is not relevant,the radio can be put back to sleep or otherwise disabled. If a relevantpacket is identified on another channel, the radio can switch to anotherfrequency channel to find and synchronize to the packet.

It should be understood that some or all components of the signalprocessing system 50 of FIG. 5 can be implemented in software ratherthan hardware. For example, the signal classifier 56 can be implementedusing a logic table such as shown in Table 1. By reducing the algorithmoutput sampling rate and making the results of each auto-correlator 68,70, 72 available to a micro-processor or digital signal processor (DSP),such a logic table can be implemented in software to facilitate moresophisticated and flexible control of a radio based on the type ofsignal detected by the signal detector 52.

FIG. 7 is a schematic diagram of an exemplary implementation of theauto-correlation bank 54 of FIG. 6. The signal data of the incomingsignal INS can be hard-limited to reduce computational complexity. Thethird auto-correlator 72 (at a 4 μs delay) is constructed using a 64 μsmoving average from two 1-bit auto-correlation samples (ACs) 106, 108.An initial AC 106 is constructed by multiplying the incoming signal data(e.g., I/O data of the incoming signal INS) with the signal data delayedby 4 μs. A delayed AC 108 is computed 64 μs later and subtracted at anAC adder 110 from the results of the initial AC 106. This is fed to anaccumulator 112 to implement the 64 μs moving average for the thirdauto-correlator 72. The second auto-correlator 70 (at an 8 μs delay)shares the delay circuit 74 and is constructed in a similar manner(e.g., with a second initial AC 114, a second delayed AC 116, and asecond AC adder 118).

This implementation has several advantages compared to the conventionalimplementations of FIGS. 1-4. For example, memory elements (e.g., thedelay circuit 74) can be re-used among multiple auto-correlators 68, 70,72 to reduce power and size of the signal detector 52. In addition,hard-limiting the signal data of the incoming signal INS reduces memoryand arithmetic unit sizes while still providing good performance. Inaddition, the memory element (e.g., the delay circuit 74) needed toimplement the moving average is reduced because it only operates on the1-bit inputs rather than multi-bit auto-correlator outputs.

FIG. 8 is a schematic diagram of an exemplary cross-correlation circuit58 for the signal processing system 50 of FIG. 5. The cross-correlationcircuit 58 uses the estimated CFO signal CFO_EST from theauto-correlation bank 54 of FIG. 6 to facilitate efficientsynchronization with the incoming signal INS. However, auto-correlators,such as those used in the auto-correlation bank 54, have a limitedfrequency range inversely proportional to the period of the preamble ofa signal. This is particularly a concern for low-cost, low-data ratesystems like LR BLE and ZB. These standards allow for inaccurate clockcrystals having large frequency offsets to satisfy IoT costrequirements, while the lower symbolling rates result in longer periodicpatterns and hence a smaller frequency range. The CFO range can becalculated from the preamble period as follows:

$f_{\max} = {\pm \frac{1}{2T}}$

As an example, the LR BLE preamble has a period of T=8 μs and thus a CFOestimate range of +/−62.5 kiloHertz (kHz). Due to phase ambiguity, theestimated CFO signal CFO_EST from the auto-correlation bank 54 cannot beused to distinguish, for example, a frequency offset of 62.5 kHz and−62.5 kHz since they result in the same auto-correlation phase. Toresolve the frequency range limits of the estimated CFO signal CFO_ESTfrom the auto-correlation bank 54, the cross-correlation circuit 58 isimplemented as shown in FIG. 8. The cross-correlation circuit 58 isdescribed with regard to LR BLE preamble as an example, but it should beunderstood that a similar circuit can be designed for any repeatingpreamble.

In this regard, the CFO correction circuit 60 corrects the frequencyoffset of the signal data of the incoming signal INS using the estimatedCFO signal CFO_EST from the auto-correlation bank 54 of FIG. 6. Due tothe phase ambiguity discussed above, the CFO value for an LR BLEpreamble will be approximately equal to the correct CFO value+/−N*125kHz for N=0, 1, 2 since the standard constrains the allowable crystaltolerance to better than 50 parts per million (ppm), corresponding to amaximum frequency error of 250 kHz. To determine which value is correctand synchronize to the preamble, multiple (for LR BLE, five) parallelcross-correlators 62(1)-62(N) perform correlations for each possibilityand select the largest value. Thus, the coefficients of outputs from thecross-correlators 62(1)-62(N) represent the expected preamble shifted by0 kHz, +/−125 kHz, and +/−250 kHz. The cross-correlator 62(1)-62(N)resulting in the largest peak is used for timing and frequencysynchronization. This may be determined using a magnitude function 120,a maximizing function 122, and/or the peak detection circuitry 66.

In conventional cross-correlation algorithms, the number ofcross-correlators is typically proportional to the length of thecorrelation, while for the cross-correlation circuit 58 the number ofcross-correlators 62(1)-62(N) is proportional to the length of thepreamble's repeating pattern. For the case of LR BLE operating at lowSNR, having a preamble length of 80 μs but a repeating period of only 8μs, this represents a factor 10 savings in the number of parallelcorrelations needed. When used in combination with the signal detector52 of FIGS. 6 and 7, the cross-correlation circuit 58 only needs to beenabled when a relevant preamble is present. Furthermore, the number ofactive cross-correlators 62(1)-62(N) and the length of the correlationcan be scaled automatically based on the type of preamble detected.

As an example, if the classification signal STYPE from the signalclassifier 56 indicates additive white Gaussian noise (AWGN) because allmagnitudes from the auto-correlation bank 54 are low, then the entirecross-correlation circuit 58 can be disabled to conserve power.Alternatively, if the signal detector 52 detects the presence of an LRBLE preamble with a period of 8 μs, five cross-correlators 62(1)-62(N)are activated to manage the phase ambiguity. In addition, the length ofthe cross-correlation is set to 80 μs for reliable detection at low SNR(or another appropriate length), the LR BLE preamble coefficients areloaded from the coefficient memory 64, and the packet carried by theincoming signal INS is detected.

In another example (such as at a later time), a BLE packet arrives witha period of 2 μs. In this case, only two cross-correlators 62(1)-62(N)are needed to handle the phase ambiguity. The length of the correlationis set to 8 μs for reliable detection at the higher operating SNR ofBLE, the BLE packets are loaded, and the packet carried by the incomingsignal INS is detected. In this manner, the signal processing system 50of FIGS. 5-8 conserves power by scaling the correlator hardware resourceas needed depending on the properties of the current incoming signal INSand saves area by re-using the same correlator resource for the multiplestandards supported by the radio.

Those skilled in the art will recognize improvements and modificationsto the preferred embodiments of the present disclosure. All suchimprovements and modifications are considered within the scope of theconcepts disclosed herein and the claims that follow.

What is claimed is:
 1. A signal detector, comprising: anauto-correlation bank configured to receive signal data for an incomingsignal and comprising: a first auto-correlator configured to correlatethe signal data against itself at a first delay; and a secondauto-correlator configured to correlate the signal data against itselfat a second delay; and a signal classifier configured to classify theincoming signal based on a first output of the first auto-correlator anda second output of the second auto-correlator.
 2. The signal detector ofclaim 1, wherein the auto-correlation bank further comprises a delaycircuit configured to provide the signal data at the first delay and thesignal data at the second delay.
 3. The signal detector of claim 2,wherein the first auto-correlator provides a moving average from aninitial auto-correlation sample (AC) and a delayed AC.
 4. The signaldetector of claim 3, wherein the initial AC and the delayed AC are 1-bitACs.
 5. The signal detector of claim 3, wherein the initial AC isconfigured to multiply the signal data with delayed signal data from thedelay circuit.
 6. The signal detector of claim 5, wherein the movingaverage comprises accumulated results from a difference between theinitial AC and the delayed AC.
 7. The signal detector of claim 1,further comprising an offset function configured to provide an estimatedcarrier frequency offset (CFO) signal based on a phase angle of thefirst output.
 8. The signal detector of claim 1, wherein the signalclassifier is configured to receive a first magnitude of the firstoutput and a second magnitude of the second output.
 9. The signaldetector of claim 8, wherein the signal classifier is configured toclassify the incoming signal based on a linear or non-linear combinationof the first magnitude and second magnitude.
 10. The signal detector ofclaim 8, wherein the signal classifier can distinguish between signaltypes comprising at least two or more of: Bluetooth, 1megabit-per-second (Mbps) Bluetooth low energy (BLE), 2 Mbps BLE, longrange (LR) BLE, ZigBee (ZB), high-rate ZB, constant wave (CW) clocksources, WiFi interference, or additive white Gaussian noise (AWGN). 11.The signal detector of claim 10, wherein the signal classifier comprisesa logic table to distinguish the signal types using the first magnitudeand the second magnitude.
 12. The signal detector of claim 1, whereinthe auto-correlation bank further comprises a third auto-correlatorconfigured to correlate the signal data against itself at a third delay.13. A method for detecting a wireless signal, comprising: receivingsignal data for an incoming signal; performing a first auto-correlationof the signal data at a first delay; performing a secondauto-correlation, concurrent with the first auto-correlation, of thesignal data at a second delay; and classifying the incoming signal basedon a first magnitude of the first auto-correlation and a secondmagnitude of the second auto-correlation.
 14. The method of claim 13,further comprising down sampling the signal data prior to performing thefirst auto-correlation.
 15. The method of claim 13, wherein the firstauto-correlation comprises a moving average between an initialauto-correlation and a delayed auto-correlation.
 16. The method of claim13, wherein classifying the incoming signal comprises: subtracting thefirst magnitude from the second magnitude to yield a net difference; anddetermining whether the net difference exceeds a threshold.
 17. Themethod of claim 13, further comprising cross-correlating the signal datain parallel with the first auto-correlation and the secondauto-correlation.
 18. The method of claim 17, wherein thecross-correlating comprises multiple parallel cross-correlationsaccording to a classification of the incoming signal.
 19. A signalprocessing system for an incoming signal, comprising: anauto-correlation bank configured to: perform a plurality ofauto-correlations of signal data of the incoming signal, eachauto-correlation having a distinct delay; and provide a carrierfrequency offset (CFO) estimate based on the plurality ofauto-correlations; a CFO correction circuit configured to frequencycompensate the signal data with the CFO estimate; and across-correlation bank configured to dynamically provide a plurality ofparallel cross-correlations of the frequency compensated signal data toresolve ambiguity in the CFO estimate.
 20. The signal processing systemof claim 19, further comprising a signal classifier configured toidentify a signal type of the incoming signal based on magnitudes of theplurality of auto-correlations; wherein a number of the plurality ofparallel cross-correlations is selected based on the signal type. 21.The signal processing system of claim 20, wherein the cross-correlationbank is disabled when the signal type is not relevant for the signalprocessing system or a current application operated on the signalprocessing system.